From 7752c1a0368f1331775ff7ea5d1d6733da795ff0 Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Thu, 16 Jun 2005 01:47:29 +0000 Subject: [PATCH] bitkeeper revision 1.1713.1.12 (42b0da31QIvTtfE2iHo4yER4A1GFIw) serial.c: Fix serial_getc locking. --- xen/drivers/char/serial.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/xen/drivers/char/serial.c b/xen/drivers/char/serial.c index bec789e084..ad5ad5cde0 100644 --- a/xen/drivers/char/serial.c +++ b/xen/drivers/char/serial.c @@ -176,11 +176,15 @@ char serial_getc(int handle) if ( port->rxbufp != port->rxbufc ) { c = port->rxbuf[MASK_SERIAL_RXBUF_IDX(port->rxbufc++)]; + spin_unlock_irqrestore(&port->lock, flags); break; } if ( port->driver->getc(port, &c) ) + { + spin_unlock_irqrestore(&port->lock, flags); break; + } spin_unlock_irqrestore(&port->lock, flags); -- 2.30.2